// 全局页面交互脚本

// 等待DOM加载完成
document.addEventListener('DOMContentLoaded', function() {
  // 初始化所有功能模块
  initModalFunctions();
  initQuantityControl();
  initTabSwitch();
  initFilterButtons();
  initMemberCenterMenu();
  initCartFunctions(); // 新增：调用购物车功能
  initBatchOrder();    // 新增：调用批量下单功能
  
  // 如果是服务页面，初始化服务筛选
  if (document.querySelector('.service-page')) {
    initServiceFilters();
  }
});

// 1. 登录/注册模态框功能
function initModalFunctions() {
  const loginBtn = document.getElementById('loginBtn');
  const registerBtn = document.getElementById('registerBtn');
  const loginModal = document.getElementById('loginModal');
  const registerModal = document.getElementById('registerModal');
  const loginClose = document.getElementById('loginClose');
  const registerClose = document.getElementById('registerClose');
  const toRegister = document.getElementById('toRegister');
  const toLogin = document.getElementById('toLogin');
  const historyLoginBtn = document.getElementById('historyLoginBtn');
  
  // 打开登录模态框
  if (loginBtn) {
    loginBtn.addEventListener('click', () => {
      loginModal.classList.add('show');
    });
  }
  
  // 打开注册模态框
  if (registerBtn) {
    registerBtn.addEventListener('click', () => {
      registerModal.classList.add('show');
    });
  }
  
  // 历史订单页登录按钮
  if (historyLoginBtn) {
    historyLoginBtn.addEventListener('click', () => {
      loginModal.classList.add('show');
    });
  }
  
  // 关闭登录模态框
  if (loginClose) {
    loginClose.addEventListener('click', () => {
      loginModal.classList.remove('show');
    });
  }
  
  // 关闭注册模态框
  if (registerClose) {
    registerClose.addEventListener('click', () => {
      registerModal.classList.remove('show');
    });
  }
  
  // 切换到注册
  if (toRegister) {
    toRegister.addEventListener('click', () => {
      loginModal.classList.remove('show');
      registerModal.classList.add('show');
    });
  }
  
  // 切换到登录
  if (toLogin) {
    toLogin.addEventListener('click', () => {
      registerModal.classList.remove('show');
      loginModal.classList.add('show');
    });
  }
  
  // 点击模态框外部关闭
  window.addEventListener('click', (e) => {
    if (e.target === loginModal) {
      loginModal.classList.remove('show');
    }
    if (e.target === registerModal) {
      registerModal.classList.remove('show');
    }
  });
}

// 2. 产品数量控制功能
function initQuantityControl() {
  const minusBtn = document.querySelector('.quantity-btn.minus');
  const plusBtn = document.querySelector('.quantity-btn.plus');
  const quantityInput = document.querySelector('.quantity-input');
  const buyNowBtn = document.getElementById('buyNowBtn');
  const priceValue = document.querySelector('.price-value');
  
  if (minusBtn && plusBtn && quantityInput) {
    // 减少数量
    minusBtn.addEventListener('click', () => {
      let currentValue = parseInt(quantityInput.value);
      if (currentValue > 10) {
        quantityInput.value = currentValue - 1;
        updateTotalPrice();
      }
    });
    
    // 增加数量
    plusBtn.addEventListener('click', () => {
      let currentValue = parseInt(quantityInput.value);
      if (currentValue < 2000) {
        quantityInput.value = currentValue + 1;
        updateTotalPrice();
      }
    });
    
    // 输入框变化时更新
    quantityInput.addEventListener('change', () => {
      let currentValue = parseInt(quantityInput.value);
      if (isNaN(currentValue) || currentValue < 10) {
        quantityInput.value = 10;
      } else if (currentValue > 2000) {
        quantityInput.value = 2000;
      }
      updateTotalPrice();
    });
  }
  
  // 更新总价
  function updateTotalPrice() {
    if (buyNowBtn && priceValue) {
      const quantity = parseInt(quantityInput.value);
      const unitPrice = parseFloat(priceValue.textContent.replace('¥', ''));
      const totalPrice = (quantity * unitPrice).toFixed(2);
      buyNowBtn.textContent = `立即购买(¥${totalPrice})`;
    }
  }
}

// 3. 选项卡切换功能
function initTabSwitch() {
  const tabBtns = document.querySelectorAll('.tab-btn');
  
  if (tabBtns.length > 0) {
    tabBtns.forEach(btn => {
      btn.addEventListener('click', () => {
        const tabId = btn.getAttribute('data-tab');
        
        // 移除所有按钮的active类
        tabBtns.forEach(b => b.classList.remove('active'));
        // 给当前按钮添加active类
        btn.classList.add('active');
        
        // 隐藏所有面板
        document.querySelectorAll('.tab-panel').forEach(panel => {
          panel.classList.remove('active');
        });
        
        // 显示当前面板
        const currentPanel = document.getElementById(`${tabId}-panel`);
        if (currentPanel) {
          currentPanel.classList.add('active');
        }
      });
    });
  }
}

// 4. 筛选按钮功能
function initFilterButtons() {
  const filterBtns = document.querySelectorAll('.filter-btn');
  
  if (filterBtns.length > 0) {
    filterBtns.forEach(btn => {
      btn.addEventListener('click', function(e) {
        e.stopPropagation(); // 防止事件冒泡
        
        // 只移除同组按钮的active类（修复冲突问题）
        const siblings = this.parentElement.querySelectorAll('.filter-btn');
        siblings.forEach(b => b.classList.remove('active'));
        
        // 给当前按钮添加active类
        this.classList.add('active');
      });
    });
  }
}

// 5. 服务筛选功能
function initServiceFilters() {
  const platformCategories = document.querySelectorAll('.platform-category');
  
  if (platformCategories.length > 0) {
    platformCategories.forEach(category => {
      category.addEventListener('click', () => {
        // 切换active状态
        platformCategories.forEach(c => c.classList.remove('active'));
        category.classList.add('active');
      });
    });
  }
}

// 6. 会员中心菜单功能（已修复闭合问题）
function initMemberCenterMenu() {
  // 检查是否是会员中心页面
  if (!document.querySelector('.member-center')) {
    return;
  }
  
  // 父菜单点击事件（展开/折叠）
  const parentLinks = document.querySelectorAll('.parent-link');
  
  parentLinks.forEach(link => {
    link.addEventListener('click', function(e) {
      e.preventDefault();
      e.stopPropagation();
      
      // 获取当前父菜单和子菜单
      const parentLi = this.closest('.has-children');
      const submenu = parentLi.querySelector('.submenu');
      
      // 切换当前菜单状态
      parentLi.classList.toggle('active');
      submenu.classList.toggle('active');
      
      // 关闭其他打开的菜单
      document.querySelectorAll('.has-children').forEach(li => {
        if (li !== parentLi) {
          li.classList.remove('active');
          const sm = li.querySelector('.submenu');
          if (sm) sm.classList.remove('active');
        }
      });
    });
  });
} // 修复：添加闭合括号

// 7. 购物车功能
function initCartFunctions() {
  const addCartBtn = document.getElementById('addCartBtn');
  
  if (addCartBtn) {
    addCartBtn.addEventListener('click', function() {
      const productName = document.querySelector('.product-title')?.textContent || '商品';
      const quantity = document.querySelector('.quantity-input')?.value || 1;
      
      // 这里可以添加实际的购物车逻辑
      alert(`已将 ${productName} x ${quantity} 加入购物车`);
    });
  }
}

// 8. 批量下单功能
function initBatchOrder() {
  const batchOrderBtn = document.getElementById('batchOrderBtn');
  
  if (batchOrderBtn) {
    batchOrderBtn.addEventListener('click', function() {
      alert('批量下单功能即将上线，敬请期待！');
    });
  }
}

// 9. 会员中心内容切换功能（合并到initMemberCenterMenu，避免重复）
function initMemberContentSwitch() {
  // 检查是否是会员中心页面
  if (!document.querySelector('.member-center')) {
    return;
  }
  
  const submenuLinks = document.querySelectorAll('.submenu a');
  const contentSections = document.querySelectorAll('.content-section');
  
  // 子菜单链接点击事件 - 切换内容区域
  submenuLinks.forEach(link => {
    link.addEventListener('click', function(e) {
      e.preventDefault();
      e.stopPropagation();
      
      // 获取目标内容区域的ID
      const targetId = this.getAttribute('href').substring(1);
      if (!targetId) return;
      
      // 更新子菜单激活状态
      submenuLinks.forEach(item => item.classList.remove('active'));
      this.classList.add('active');
      
      // 隐藏所有内容区域，显示目标区域
      contentSections.forEach(section => section.classList.remove('active'));
      const targetSection = document.getElementById(targetId);
      if (targetSection) {
        targetSection.classList.add('active');
      } else {
        console.warn('未找到ID为"' + targetId + '"的内容区域');
      }
      
      // 滚动到顶部
      window.scrollTo({ top: 0, behavior: 'smooth' });
    });
  });
  
  // 初始化默认显示第一个内容
  setTimeout(() => {
    if (submenuLinks.length > 0 && !document.querySelector('.submenu a.active')) {
      submenuLinks[0].click();
    }
  }, 100);
}

// 补充：初始化会员中心内容切换（在DOM加载时已通过initMemberCenterMenu触发）
initMemberContentSwitch();
    